POGO=../../../pogo
VBOY = /gba/vboy/vboy.exe
GDB = /gba/gdb/arm-gdb.exe

CFLAGS	= -DGBA -DVMEM -Wall -c -fomit-frame-pointer -mthumb -mthumb-interwork -fno-builtin -O3 -nostdinc -I$(POGO)/include
#CFLAGS	= -DGBA -DDEBUG -DVMEM -Wall -c -g -fno-builtin -nostdinc -I$(POGO)/include
MODEL = -v -mthumb -mthumb-interwork
PREFIX=linkwrap arm-agb-elf-
CC = $(PREFIX)gcc
LD = $(PREFIX)gcc
AS = $(PREFIX)as
LDFLAGS = -Tlnkscript
OBJCOPY = $(PREFIX)objcopy
LIBS = -L$(POGO)/lib -lpogo -lgcc

TARGET = bmpview

OBJFILES = crt0.o core_init.o bmpview.o


FILESYS = root

all : $(TARGET).bin

run:
	$(VBOY) $(TARGET).bin

deb:
	$(GDB) --command=gdb.cmd $(TARGET).elf &
	$(VBOY) -Gtcp $(TARGET).bin

flash:
	mb -e -p $(TARGET).bin -w 15

clean :
	rm -f *.o *.bin *.elf

rebuild: clean all

crt0.o: crt0.S
	$(AS) -o $@ $<

$(TARGET).bin : $(TARGET).elf Makefile
	$(OBJCOPY) -O binary $(TARGET).elf $(TARGET)_nofs.bin
	$(POGO)/tools/makefs $(TARGET)_nofs.bin $(TARGET).bin $(FILESYS)
	gbafix -t"BMPVIEW" $(TARGET)_nofs.bin

$(TARGET).elf : $(OBJFILES) $(POGO)\lib\libpogo.a
	$(LD) -nostdlib -Wl,$(LDFLAGS) -mthumb -mthumb-interwork -o $(TARGET).elf $(OBJFILES) $(LIBS)

